package com.atguigu.lease.common.mybatisplus;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * @author Tsuchi
 * @description TODO
 * @date 2024/12/20 15:45
 */

/*
 * 把那个fill注解功能实现 (实现自动添加creattime跟updatetime功能)
 * 实现了 这个接口的实现类 比如被ioc容器管理 mybatisplus在工作的时候自动获取该对象实现功能
 *
 * */
// 日期处理器
@Component
public class MybatisMetaObjectHandler implements MetaObjectHandler {

	@Override
	public void insertFill(MetaObject metaObject) {
		// 记得是写类当中的属性 不要写成列名！
		// metaObject表示当前要操作的实体类对象
		this.strictInsertFill(metaObject, "createTime",
			Date.class, new Date());
	}

	@Override
	public void updateFill(MetaObject metaObject) {
		this.strictUpdateFill(metaObject, "updateTime",
			Date.class, new Date());
	}
}
